Control device of internal combustion engine, in-vehicle electronic control unit, machine learning system, control method of internal combustion engine, manufacturing method of electronic control unit, and output parameter calculation device

ABSTRACT

A control device of an internal combustion engine includes a parameter acquisition unit that acquires a plurality of input parameters, a calculation unit that calculates at least one output parameter using a neural network model, and a controller that controls the internal combustion engine. The neural network model includes a plurality of neural network units and an output layer. Each of the neural network units includes one input layer and at least one intermediate layer. The neural network model inputs different combinations of input parameters selected from the input parameters to each of the input layers of the neural network units such that a total number of input parameters to be input to the neural network units is larger than the number of the input parameters.

INCORPORATION BY REFERENCE

The disclosure of Japanese Patent Application No. 2019-017146 filed onFeb. 1, 2019 including the specification, drawings and abstract isincorporated herein by reference in its entirety.

BACKGROUND 1. Technical Field

The disclosure relates to a control device of an internal combustionengine, an in-vehicle electronic control unit, a machine learningsystem, a control method of an internal combustion engine, amanufacturing method of an electronic control unit, and an outputparameter calculation device.

2. Description of Related Art

The related art discloses that a predetermined output parameter iscalculated based on a predetermined input parameter using a neuralnetwork model including an input layer, a hidden layer (intermediatelayer), and an output layer (for example, Japanese Unexamined PatentApplication Publication No. 2011-054200 (JP 2011-054200 A)).

SUMMARY

In the neural network model, a parameter that correlates with the outputparameter is used as the input parameter to be input to the input layer.Basically, since an information amount for calculating the outputparameter is larger as the number of input parameters is larger,calculation accuracy of the output parameter is improved.

However, not all types of input parameters can be acquired. For thisreason, the improvement of the calculation accuracy of the outputparameter is desired with limited types of input parameters.

The disclosure provides a control device of an internal combustionengine, an in-vehicle electronic control unit, a machine learningsystem, a control method of an internal combustion engine, amanufacturing method of an electronic control unit, and an outputparameter calculation device that improve calculation accuracy of anoutput parameter without increasing types of input parameters when theoutput parameter is calculated based on the input parameters using aneural network model.

The gist of the disclosure is as follows.

A first aspect of the disclosure relates to a control device of aninternal combustion engine including a parameter acquisition unitconfigured to acquire a plurality of input parameters, a calculationunit configured to calculate at least one output parameter based on theinput parameters acquired by the parameter acquisition unit using aneural network model, and a controller configured to control theinternal combustion engine based on the at least one output parametercalculated by the calculation unit. The neural network model includes aplurality of neural network units and an output layer that outputs theat least one output parameter based on outputs of the neural networkunits. Each of the neural network units includes one input layer and atleast one intermediate layer. The neural network model is configured toinput different combinations of input parameters selected from the inputparameters to each of the input layers of the neural network units suchthat a total number of input parameters to be input to the neuralnetwork units is larger than the number of the input parameters.

In the first aspect of the disclosure, the number of the inputparameters may be n. The neural network model may include _(n)C_(k)neural network units to which _(n)C_(k) combinations of input parametersselected from the input parameters are input, where n may be three ormore and k may be two to n−1.

The first aspect of the disclosure may further include a learning unitconfigured to perform learning of the neural network model in a vehiclemounted with the internal combustion engine. The parameter acquisitionunit may be configured to acquire the input parameters and the at leastone output parameter. The learning unit may be configured to perform thelearning of the neural network model using a training data set includinga combination of the input parameters and the at least one outputparameter acquired by the parameter acquisition unit.

A second aspect of the disclosure relates to an in-vehicle electroniccontrol unit including a parameter acquisition unit configured toacquire a plurality of input parameters, and a calculation unitconfigured to calculate at least one output parameter based on the inputparameters acquired by the parameter acquisition unit using a neuralnetwork model transmitted from a server outside a vehicle to thevehicle. The neural network model includes a plurality of neural networkunits and an output layer that outputs the at least one output parameterbased on outputs of the neural network units. Each of the neural networkunits includes one input layer and at least one intermediate layer. Theneural network model is configured to input different combinations ofinput parameters selected from the input parameters to each of the inputlayers of the neural network units such that a total number of inputparameters to be input to the neural network units is larger than thenumber of the input parameters.

A third aspect of the disclosure relates to a machine learning systemincluding an electronic control unit provided in a vehicle, acommunication device provided in the vehicle, and a server outside thevehicle. The electronic control unit includes a parameter acquisitionunit configured to acquire a plurality of input parameters and at leastone output parameter and transmit the input parameters and the at leastone output parameter to the server through the communication device, anda calculation unit configured to calculate the at least one outputparameter based on the input parameters acquired by the parameteracquisition unit using a neural network model transmitted from theserver. The server is configured to perform learning of the neuralnetwork model using a training data set including a combination of theinput parameters and the at least one output parameter acquired by theparameter acquisition unit. The neural network model includes aplurality of neural network units and an output layer that outputs theat least one output parameter based on outputs of the neural networkunits. Each of the neural network units includes one input layer and atleast one intermediate layer. The neural network model is configured toinput different combinations of input parameters selected from the inputparameters to each of the input layers of the neural network units suchthat a total number of input parameters to be input to the neuralnetwork units is larger than the number of the input parameters.

A fourth aspect of the disclosure relates to a control method of aninternal combustion engine including acquiring a plurality of inputparameters, calculating at least one output parameter based on the inputparameters using a neural network model, and controlling the internalcombustion engine based on the at least one output parameter. The neuralnetwork model includes a plurality of neural network units and an outputlayer that outputs the at least one output parameter based on outputs ofthe neural network units. Each of the neural network units includes oneinput layer and at least one intermediate layer. The neural networkmodel is configured to input different combinations of input parametersselected from the input parameters to each of the input layers of theneural network units such that a total number of input parameters to beinput to the neural network units is larger than the number of the inputparameters.

A fifth aspect of the disclosure relates to a manufacturing method of anelectronic control unit including performing learning of a neuralnetwork model using a training data set including a combination ofmeasured values of a plurality of input parameters and measured valuesof at least one output parameter corresponding to the measured values,and mounting the neural network model in the electronic control unit.The neural network model includes a plurality of neural network unitsand an output layer that outputs the at least one output parameter basedon outputs of the neural network units. Each of the neural network unitsincludes one input layer and at least one intermediate layer. The neuralnetwork model is configured to input different combinations of inputparameters selected from the input parameters to each of the inputlayers of the neural network units such that a total number of inputparameters to be input to the neural network units is larger than thenumber of the input parameters.

A sixth aspect of the disclosure relates to an output parametercalculation device including a parameter acquisition unit configured toacquire a plurality of input parameters, and a calculation unitconfigured to calculate at least one output parameter based on the inputparameters acquired by the parameter acquisition unit using a neuralnetwork model. The neural network model includes a plurality of neuralnetwork units and an output layer that outputs the at least one outputparameter based on outputs of the neural network units. Each of theneural network units includes one input layer and at least oneintermediate layer. The neural network model is configured to inputdifferent combinations of input parameters selected from the inputparameters to each of the input layers of the neural network units suchthat a total number of input parameters to be input to the neuralnetwork units is larger than the number of the input parameters.

According to each aspect of the disclosure, when the output parameter iscalculated based on the input parameters using the neural network model,it is possible to improve the calculation accuracy of the outputparameter without increasing the types of input parameters.

BRIEF DESCRIPTION OF THE DRAWINGS

Features, advantages, and technical and industrial significance ofexemplary embodiments of the present disclosure will be described belowwith reference to the accompanying drawings, in which like numeralsdenote like elements, and wherein:

FIG. 1 is a diagram schematically showing an internal combustion engineto which a control device of the internal combustion engine according toa first embodiment is adapted;

FIG. 2 is a functional block diagram of an electronic control unit (ECU)according to the first embodiment;

FIG. 3 is a diagram showing an example of a neural network having asimple configuration;

FIG. 4 is a diagram showing an example of the neural network accordingto the first embodiment;

FIG. 5 is a diagram showing an example of the neural network accordingto the first embodiment;

FIG. 6 is a graph showing a relationship between a degree of freedom ofa neural network model and a determination coefficient of an outputparameter;

FIG. 7 is a diagram schematically showing a configuration of a firstneural network model according to the embodiment;

FIG. 8 is a graph showing a relationship between the number of trainingdata sets used for learning the neural network model and thedetermination coefficient of the output parameter;

FIG. 9 is a flowchart showing a control routine for controlling theinternal combustion engine according to the first embodiment;

FIG. 10 is a diagram schematically showing a machine learning systemaccording to a second embodiment; and

FIG. 11 is a functional block diagram of an ECU according to a fourthembodiment.

DETAILED DESCRIPTION OF EMBODIMENTS

Hereinafter, embodiments of the disclosure will be described in detailwith reference to drawings. In the following description, the samereference numeral is assigned to a similar component.

First Embodiment

First, a first embodiment of the disclosure will be described withreference to FIGS. 1 to 9.

Description of Whole Internal Combustion Engine

FIG. 1 is a diagram schematically showing an internal combustion engineto which a control device of the internal combustion engine according tothe first embodiment is adapted. An internal combustion engine 1 shownin FIG. 1 is a compression self-ignition internal combustion engine(diesel engine) and is mounted on a vehicle.

The internal combustion engine 1 includes an engine body 10, a fuelsupply device 20, an intake system 30, an exhaust system 40, and anexhaust gas recirculation (EGR) system 50. The engine body 10 includes acylinder block in which a plurality of cylinders 11 is formed, acylinder head in which an intake port and an exhaust port are formed,and a crankcase. In the embodiment, the number of cylinders 11 is four.A piston is disposed in each cylinder 11, and each cylinder 11communicates with the intake port and the exhaust port. The cylinderhead is provided with an intake valve configured to open and close theintake port and an exhaust valve configured to open and close theexhaust port.

The fuel supply device 20 includes a fuel injection valve 21, a commonrail 22, a fuel supply pipe 23, a fuel pump 24, and a fuel tank 25. Thefuel injection valve 21 is connected to the fuel tank 25 through thecommon rail 22 and the fuel supply pipe 23. The fuel injection valve 21is disposed on the cylinder head so as to directly inject fuel into acombustion chamber of each cylinder 11. The fuel injection valve 21 is aso-called in-cylinder fuel injection valve. The fuel pump 24 thatpressure-feeds the fuel in the fuel tank 25 is disposed in the fuelsupply pipe 23. The fuel pressure-fed by the fuel pump 24 is supplied tothe common rail 22 through the fuel supply pipe 23 and directly injectedfrom the fuel injection valve 21 into the combustion chamber of eachcylinder 11. A pressure of the fuel in the common rail 22 is adjusted bychanging an output of the fuel pump 24.

In the internal combustion engine 1, a so-called multistage injection isperformed by the fuel injection valve 21. Specifically, two pilotinjections (a first pilot injection and a second pilot injection) andone main injection are performed in one cycle.

The intake system 30 includes the intake port, an intake manifold 31, anintake pipe 32, an air cleaner 33, a compressor 34 of a turbocharger 5,an intercooler 35, and a throttle valve 36. The intake port, the intakemanifold 31, and the intake pipe 32 form an intake passage that guidesair into the cylinder 11.

The intake port of each cylinder 11 communicates with the air cleaner 33through the intake manifold 31 and the intake pipe 32. The compressor 34that compresses and discharges intake air that flows through the intakepipe 32 and the intercooler 35 that cools the air compressed by thecompressor 34 are provided in the intake pipe 32. The throttle valve 36can be rotated by a throttle valve drive actuator 37 to change anopening area of the intake passage.

The exhaust system 40 includes the exhaust port, an exhaust manifold 41,an exhaust pipe 42, a turbine 43 of the turbocharger 5, and a dieselparticulate filter (DPF) 44. The exhaust port, the exhaust manifold 41and the exhaust pipe 42 form an exhaust passage for exhausting exhaustgas generated by combustion of an air-fuel mixture in the combustionchamber.

The exhaust port of each cylinder 11 communicates with the DPF 44through the exhaust manifold 41 and the exhaust pipe 42. The exhaustpipe 42 is provided with a turbine 43 rotatably driven by the energy ofthe exhaust gas. When the turbine 43 is rotatably driven, the compressor34 rotates accompanying the rotation and thus the intake air iscompressed. In the embodiment, the turbine 43 is provided with avariable nozzle. When an opening degree of the variable nozzle ischanged, a flow velocity of the exhaust gas to be supplied to a turbineblade of the turbine 43 changes. As a result, a rotational speed of theturbine 43 changes.

The DPF 44 collects particulate matter (PM) in the exhaust gas. Theexhaust system 40 may include another exhaust gas control device insteadof or in addition to the DPF 44. Examples of another exhaust gas controldevice are a selective reduction type NOx reduction catalyst (selectivecatalytic reduction (SCR) catalyst), a NOx storage reduction catalyst,and an oxidation catalyst.

The EGR system 50 supplies a part of the exhaust gas discharged from theengine body 10 to the exhaust passage to the intake passage. The EGRsystem 50 includes an EGR pipe 51, an EGR control valve 52, and an EGRcooler 53. The EGR pipe 51 is connected to the exhaust manifold 41 andthe intake manifold 31 and allows the exhaust manifold 41 and the intakemanifold 31 to communicate with each other. The EGR pipe 51 is providedwith the EGR cooler 53 that cools the EGR gas flowing in the EGR pipe51. The EGR pipe 51 is provided with the EGR control valve 52 that canchange the opening area of an EGR passage formed by the EGR pipe 51. Theopening degree of the EGR control valve 52 is controlled to adjust aflow rate of the EGR gas to be recirculated from the exhaust manifold 41to the intake manifold 31. As a result, an EGR rate changes. The EGRrate is a ratio of an EGR gas amount to a total gas amount to besupplied into the cylinder 11 (sum of a fresh air amount and the EGR gasamount).

The configuration of the internal combustion engine 1 is not limited tothe above configuration. Therefore, the specific configuration of theinternal combustion engine such as the cylinder arrangement, the fuelinjection mode, the intake and exhaust system configuration, the valvemechanism configuration, the turbocharger configuration, and thepresence or absence of the turbocharger may be different from theconfiguration shown in FIG. 1.

Control Device of Internal Combustion Engine

A vehicle mounted with the internal combustion engine 1 is provided withan electronic control unit (ECU) 61. Various controls of the internalcombustion engine 1 are executed by the ECU 61 based on outputs ofvarious sensors provided in the internal combustion engine 1. The ECU 61is an example of the control device of the internal combustion engine.In the embodiment, one ECU 61 is provided, but a plurality of ECUs maybe provided for each function.

The ECU 61 is configured of a digital computer and includes a memory 63,a processor 65, an input port 66, and an output port 67 that areconnected to each other through a bidirectional bus 62. The memory 63includes a volatile memory (for example, RAM) and a non-volatile memory(for example, ROM) and stores a program executed by the processor 65,various pieces of data used when various processes are executed by theprocessor 65, and the like.

The outputs of various sensors are input to the input port 66. In theembodiment, the outputs of an air flow meter 71, an intake airtemperature sensor 72, an intake air pressure sensor 73, a fuel pressuresensor 74, and a load sensor 78 are input to the input port 66 through acorresponding analog to digital (AD) converter 68.

The air flow meter 71 is disposed in the intake pipe 32 between the aircleaner 33 and the compressor 34 and measures the flow rate of air(fresh air) in the intake pipe 32. The intake air temperature sensor 72is disposed in the intake manifold 31 and measures the temperature ofthe intake air (fresh air and EGR gas in the embodiment) in the intakemanifold 31. The intake air pressure sensor 73 is disposed in the intakemanifold 31 and measures the pressure of intake air in the intakemanifold 31.

The fuel pressure sensor 74 is disposed on the common rail 22 andmeasures the pressure of the fuel in the common rail 22, that is, thepressure of the fuel to be supplied to the fuel injection valve 21. Theload sensor 78 is connected to an accelerator pedal 77 provided in thevehicle and generates an output voltage proportional to a depressionamount of the accelerator pedal 77. The processor 65 calculates anengine load based on the output of the load sensor 78.

The input port 66 is connected to a crank angle sensor 79 that generatesan output pulse every time a crankshaft rotates, for example, 10° andreceives the output pulse. The processor 65 measures an engine speedbased on the output of the crank angle sensor 79.

On the other hand, the output port 67 is connected to various actuatorsof the internal combustion engine 1 through a corresponding drivecircuit 69. In the embodiment, the output port 67 is connected to thevariable nozzle of the turbine 43, the fuel injection valve 21, the fuelpump 24, the throttle valve drive actuator 37, and the EGR control valve52. The ECU 61 outputs a control signal from the output port 67 tocontrol the various actuators.

FIG. 2 is a functional block diagram of the ECU 61 in the firstembodiment. In the embodiment, the ECU 61 includes a parameteracquisition unit 81, a calculation unit 82, and a controller 83. Theparameter acquisition unit 81, the calculation unit 82, and thecontroller 83 are functional blocks that are realized when the processor65 of the ECU 61 executes the program stored in the memory 63 of the ECU61.

The parameter acquisition unit 81 acquires a plurality of inputparameters. The calculation unit 82 calculates at least one outputparameter based on the input parameters acquired by the parameteracquisition unit 81 using a neural network model. The controller 83controls the internal combustion engine 1 based on the at least oneoutput parameter calculated by the calculation unit 82.

Outline of Neural Network Model

First, an outline of the neural network model will be described withreference to FIG. 3. FIG. 3 is a diagram showing an example of theneural network model having a simple configuration.

A circle in FIG. 3 represents an artificial neuron. The artificialneuron is commonly referred to as a node or a unit (referred to as“nodes” in the specification). In FIG. 3, L=1 indicates an input layer,L=2 and L=3 indicate hidden layers, and L=4 indicates an output layer.The hidden layer is also referred to as an intermediate layer.

In FIG. 3, x₁ and x₂ indicate respective nodes of the input layer (L=1)and output values from the nodes, and y indicates a node of the outputlayer (L=4) and an output value from the node. Similarly, z₁ ^((L=2)),z₂ ^((L=2)), and z₃ ^((L=2)) indicate respective nodes of the hiddenlayer (L=2) and output values from the nodes, and z₁ ^((L=3)) and z₂^((L=3)) indicate respective nodes of the hidden layer (L=3) and outputvalues from the nodes.

An input is output as it is at each node of the input layer. On theother hand, the output values x₁ and x₂ of respective nodes of the inputlayer are input to respective nodes of the hidden layer (L=2), and atotal input value u is calculated using weight w and bias bcorresponding to each of the output values at respective nodes of thehidden layer (L=2). For example, a total input value u_(k) ^((L=2))calculated at each node indicated by z_(k) ^((L=2)) (k=1, 2, 3) of thehidden layer (L=2) in FIG. 3 is as the following equation (M is thenumber of nodes in the input layer).

$\begin{matrix}\left\lbrack {{Formula}\mspace{14mu} 1} \right\rbrack & \; \\{u_{k}^{({L = 2})} = {{\sum\limits_{m = 1}^{M}\left( {x_{m} \cdot w_{k\; m}^{({L = 2})}} \right)} + b_{k}}} & \;\end{matrix}$

Next, the total input value u_(k) ^((L=2)) is converted by an activationfunction f and is output from each node indicated by z_(k) ^((L=2)) ofthe hidden layer (L=2) as the output value z_(k) ^((L=2))(=f(u_(k)^((L=2)))). On the other hand, the output values z₁ ^((L=2)), z₂^((L=2)), and z₃ ^((L=2)) of respective nodes of the hidden layer (L=2)are input to respective nodes of the hidden layer (L=3), and a totalinput value u(=Σz·w+b) is calculated using weight w and bias bcorresponding to each of the output values at respective nodes of thehidden layer (L=3). The total input values u are similarly converted byan activation function and are output as output values z₁ ^((L=3)) andz₂ ^((L=3)) from respective nodes of the hidden layer (L=3). Theactivation function is, for example, a sigmoid function 6.

The output values z₁ ^((L=3)) and z₂ ^((L=3)) of respective nodes of thehidden layer (L=3) are input to the node of the output layer (L=4). Atotal input value u(Σz·w+b) is calculated using weight w and bias bcorresponding to each of the output values or a total input valueu(Σz·w) is calculated using solely weight w corresponding to each of theoutput values at the node of the output layer. For example, an identityfunction is used as an activation function at the node of the outputlayer. In this case, the total input value u calculated at the node ofthe output layer is output as it is as the output value y from the nodeof the output layer.

Learning in Neural Network Model

In the embodiment, a value of each weight w and a value of each bias bin the neural network model are learned using an error back-propagationmethod. Since the error back-propagation method is well known, anoutline of the error back-propagation method will be briefly describedbelow. Since the bias b is a kind of the weight w, the bias b is one ofthe weights w in the following description.

In the neural network model as shown in FIG. 3, when the weight in thetotal input value u^((L)) to the node of each layer of L=2, L=3, or L=4is represented by w^((L)), the differential of an error function E bythe weight w^((L)), that is, a gradient ∂E/∂w^((L)) is rewritten as thefollowing equation.[Formula 2]∂E/∂w ^((L))=(∂E/∂u ^((L)))(∂u ^((L)) /∂w ^((L)))  (1)

Here, when z^((L−1))·∂w^((L))=∂u^((L)) and (∂E/∂u^((L)))=δ^((L)), theabove equation (1) is converted to the following equation.[Formula 3]∂E/∂w ^((L))=δ^((L)) ·z ^((L−1))  (2)

Here, when u^((L)) fluctuates, the error function E fluctuates through achange in a total input value u^((L+1)) of the next layer. Therefore,δ^((L)) can be represented by the following equation (K is the number ofnodes in an L+1 layer).

$\begin{matrix}\left\lbrack {{Formula}\mspace{14mu} 4} \right\rbrack & \; \\{\delta^{(L)} = {\left( \frac{\partial E}{\partial u^{(L)}} \right) = {\sum\limits_{k = 1}^{K}{\left( \frac{\partial E}{\partial u_{k}^{({L + 1})}} \right)\left( \frac{\partial u_{k}^{({L + 1})}}{\partial u^{(L)}} \right)\mspace{14mu}\left( {{k = 1},2,\ldots\mspace{14mu},K} \right)}}}} & (3)\end{matrix}$

Here, when z^((L))=f(u^((L))), a total input value u_(k) ^((L+1)) on theright side of the above equation (3) is represented by the followingequation.

$\begin{matrix}\left\lbrack {{Formula}\mspace{14mu} 5} \right\rbrack & \; \\{u_{k}^{({L + 1})} = {{\sum\limits_{k = 1}^{K}{w_{k}^{({L + 1})} \cdot z^{(L)}}} = {\sum\limits_{k = 1}^{K}{w_{k}^{({L + 1})} \cdot {f\left( u^{(L)} \right)}}}}} & (4)\end{matrix}$

Here, a first term (∂E/∂u^((L+1))) on the right side of the aboveequation (3) is δ^((L+1)). Further, a second term (∂u_(k)^((L+1))/∂u^((L))) on the right side of the above equation (3) isrepresented by the following equation.[Formula 6]∂(w _(k) ^((L+1)) ·z ^((L)))/∂u ^((L)) =w _(k) ^((L+1)) ·∂f(u ^((L)))/∂u^((L)) =w _(k) ^((L+1)) ·f′(u ^((L)))  (5)

Therefore, δ^((L)) is represented by the following equation.

$\begin{matrix}\left\lbrack {{Formula}\mspace{14mu} 7} \right\rbrack & \; \\{{\delta^{(L)} = {\sum\limits_{k = 1}^{K}{w_{k}^{({L + 1})} \cdot \delta^{({L + 1})} \cdot {f^{*}\left( u^{(L)} \right)}}}}{{{that}\mspace{14mu}{is}},{\delta^{({L - 1})} = {\sum\limits_{k = 1}^{K}{w_{k}^{(L)} \cdot \delta^{(L)} \cdot {f^{*}\left( u^{({L - 1})} \right)}}}}}} & (6)\end{matrix}$

That is, when δ^((L+1)) is obtained, δ^((L)) can be obtained.

When the learning of the neural network model is performed, a trainingdata set including a certain input value x and correct answer data y_(t)of an output value corresponding to the input value x is used. When theoutput value from an output layer corresponding to the certain inputvalue x is y, the error function E is E=½(y−y_(t))² when a square erroris used as the error function. The output value y=f(u^((L))) at the nodeof the output layer (L=4) in FIG. 3. Therefore, the value of δ^((L)) atthe node of the output layer (L=4) is indicated by the followingequation.[Formula 8]δ^((L)) =∂E/∂u ^((L))=(∂E/∂y)(∂y/∂u ^((L)))=(y−y _(t))·f′(u ^((L)))  (7)

Here, when the activation function f(u^((L))) of the output layer is theidentity function, f(u^((L)))=1. Therefore, δ^(L)=y−y_(t), and δ^((L))is obtained.

When δ^((L)) is obtained, δ of the previous layer is obtained using theabove equation (6). In this manner, δ of the previous layer issequentially obtained, and the differential of the error function E withrespect to each weight w, that is, the gradient ∂E/∂w^((L)) is obtainedusing the value of δ from the above equation (2). When the gradient∂E/∂w(^((L)) is obtained, the value of the weight w is updated using thegradient ∂E/∂w^((L)) such that the value of the error function Edecreases. That is, the learning of the neural network model isperformed.

Problem of Neural Network Model in Related Art

The neural network model as described above includes one input layer,and the different types of input parameters (input values) correlatedwith the output parameter (output value) output from the output layerare input to each node of the input layer. As a result, the intermediatestate quantities generated from the input parameters are sequentiallyconverted in the intermediate layer, and finally the output parameter isoutput from the output layer.

In such a neural network model, basically, since an information amountfor calculating the output parameter is larger as the number of inputparameters is larger, calculation accuracy of the output parameter isimproved. However, not all types of input parameters can be acquired.For example, when a target of the neural network model is the internalcombustion engine 1, the injection density of the fuel injected from thefuel injection valve 21 and the spread of the injection affect acombustion result of the air-fuel mixture. However, it is difficult tomeasure the injection density and the spread of the injection. For thisreason, the improvement of the calculation accuracy of the outputparameter is desired with limited types of input parameters.

Neural Network Model in Embodiment

On the contrary, in the embodiment, the neural network model includes aplurality of input layers in order to increase the number of apparentinput parameters. Specifically, the neural network model includes aplurality of neural network units and an output layer that outputs atleast one output parameter based on outputs of the neural network units.Each of the neural network units includes one input layer and at leastone intermediate layer. The neural network units have, for example, thesame configuration (number of nodes of the input layer, number ofintermediate layers, and number of nodes of each intermediate layer).

In the neural network model according to the embodiment, a set of inputparameters including different types of input parameters is input to theinput layers. In this case, it is conceivable to input the samecombination of input parameters to the input layers in order to increasethe total number of input parameters to be input to the neural networkmodel. However, in this case, similar intermediate state quantities aregenerated in the neural network units. For this reason, it is impossibleto increase the expressive power of the neural network model and thus toimprove the calculation accuracy of the output parameter.

In the neural network model according to the embodiment, differentcombinations of input parameters selected from the input parameters areinput to each of the input layers of the neural network units such thatthe total number of input parameters to be input to the neural networkunits is larger than the number of the input parameters acquired by theparameter acquisition unit 81. As a result, different intermediate statequantities are generated in the neural network units, and the outputparameter is output from a plurality of intermediate state quantities.For this reason, it is possible to increase the expressive power of theneural network model and thus to improve the calculation accuracy of theoutput parameter without increasing the types of input parameters.

For example, when the number of the input parameters is n, the neuralnetwork model includes _(n)C_(k) neural network units to which _(n)C_(k)combinations of input parameters selected from the input parametersacquired by the parameter acquisition unit 81 are input. In this case,an equal number (k) of input parameters are input to each neural networkunit. N is 3 or more and k is 2 to n−1 such that the differentcombinations of input parameters are input to each neural network unit.In this manner, it is possible to easily generate the neural networkmodel capable of generating the different intermediate state quantitiesby selecting the number of neural network units and the combinations ofinput parameters.

Hereinafter, a specific example of the neural network model in theembodiment will be described. In the embodiment, the neural networkmodel is a regression model that predicts at least one output parameterfrom the input parameters.

FIG. 4 is a diagram showing an example of the neural network model inthe first embodiment. In the example of FIG. 4, the number of inputparameters to be acquired by the parameter acquisition unit 81 is three(x1, x2, and x3). The types of the three input parameters are differentfrom each other.

As shown in FIG. 4, the neural network model includes a first neuralnetwork unit (referred to as a “first NN unit” in the specification), asecond neural network unit (referred to as a “second NN unit” in thespecification), a third neural network unit (referred to as a “third NNunit” in the specification), and an output layer. That is, the neuralnetwork model includes three neural network units.

The first neural network unit includes one input layer (a first inputlayer) and two hidden layers (a first hidden layer and a second hiddenlayer) directly or indirectly coupled to the input layer. A set of inputparameters (x1 and x2) selected from a plurality of input parameters(x1, x2, and x3) is input to the first input layer. The number of nodesof the input layer is equal to the number of input parameters to beinput to the input layer. For this reason, the first input layer has twonodes.

The first hidden layer is coupled to the first input layer, and outputsof the first input layer are input to the first hidden layer.Specifically, nodes of the first hidden layer are respectively coupledto all the nodes of the first input layer. For this reason, the outputsof all the nodes of the first input layer are respectively input to thenodes of the first hidden layer. In the example of FIG. 4, the firsthidden layer has four nodes.

The second hidden layer is coupled to the first hidden layer, andoutputs of the first hidden layer are input to the second hidden layer.Specifically, nodes of the second hidden layer are respectively coupledto all the nodes of the first hidden layer. For this reason, the outputsof all the nodes of the first hidden layer are respectively input to thenodes of the second hidden layer. In the example of FIG. 4, the secondhidden layer has four nodes.

The second neural network unit has the same configuration as the firstneural network unit and includes one input layer (a second input layer)and two hidden layers (a third hidden layer and a fourth hidden layer)directly or indirectly coupled to the input layer. A set of inputparameters (x1 and x3) selected from the input parameters (x1, x2, andx3) are input to the second input layer.

The third neural network unit has the same configuration as the firstneural network unit and includes one input layer (a third input layer)and two hidden layers (a fifth hidden layer and a sixth hidden layer)directly or indirectly coupled to the input layer. A set of inputparameters (x2, and x3) selected from the input parameters (x1, x2, andx3) are input to the third input layer.

The output layer outputs an output parameter y based on the outputs ofthe first to third neural network units. For this reason, the outputlayer is coupled to the first to third neural network units, and theoutputs of the first to third neural network units are input to theoutput layer.

Specifically, the output layer is coupled to the second hidden layer ofthe first neural network unit, the fourth hidden layer of the secondneural network unit, and the sixth hidden layer of the third neuralnetwork unit. That is, a node of the output layer is coupled to all thenodes of the second hidden layer, the fourth hidden layer, and the sixthhidden layer. For this reason, the outputs of all the nodes of thesecond hidden layer, the fourth hidden layer, and the sixth hidden layerare input to the node of the output layer. The number of nodes of theoutput layer is equal to the number of output parameters to be outputfrom the output layer. In the example of FIG. 4, the output layeroutputs one output parameter y and has one node.

In the neural network model of FIG. 4, ₃C₂ (=3) combinations of inputparameters selected from the input parameters (x1, x2, and x3) are inputto the input layer of ₃C₂ (=3) neural network units. For this reason, acombination of input parameters (x1 and x2) to be input to the firstinput layer of the first neural network unit, a combination of inputparameters (x1 and x3) to be input to the second input layer of thesecond neural network unit, and a combination of input parameters (x2,and x3) to be input to the third input layer of the third neural networkunit are different from each other.

The first to third neural network units respectively have independentconfigurations. That is, there are no nodes coupled to each otherbetween the different neural network units. For this reason, differentintermediate state quantities are generated in each neural network unit,and output parameters are output based on the three intermediate statequantities. Therefore, it is possible to increase the expressive powerof the neural network model and thus to improve the calculation accuracyof the output parameter without increasing the types of inputparameters.

The number of neural network units may be two or more. For example, thefirst neural network unit, the second neural network unit, or the thirdneural network unit may be omitted.

The neural network units may have different configurations. For example,the number of input parameters to be input to each input layer may bedifferent. That is, the number of nodes in each input layer may bedifferent. For example, the three input parameters (x1, x2, and x3) maybe input to the third input layer, and the third input layer may havethree nodes.

The number of hidden layers in each neural network unit may be one ormore. Further, the number of hidden layers in each neural network unitmay be different. For example, the first neural network unit may includethree hidden layers.

The number of nodes in each hidden layer may be one or more. Further,the number of nodes in each hidden layer may be different. For example,the first hidden layer may have eight nodes. The number of outputparameters output from the output layer may be two or more. That is, theoutput layer may have two or more nodes.

As shown in FIG. 5, the neural network model may further include a fullycoupled layer coupled to the output layer, and the neural network unitsmay be coupled to the output layer through the fully coupled layer. Thenumber of nodes of fully coupled layer may be one or more.

In the embodiment, the learning of the neural network model (that is,setting of the weight w and the bias b) is performed before the neuralnetwork model is mounted on the vehicle. In the learning of the neuralnetwork, a training data set including a combination of measured valuesof the input parameters and measured values (correct answer data) of atleast one output parameter corresponding to the measured values is used.The measured values of the input parameters and the output parameter areacquired in advance using, for example, an engine bench, and thetraining data set is created in advance by combining the correspondingmeasured values.

In the learning of the neural network model, the weight w and the bias bin the neural network model are repeatedly updated by the errorback-propagation method described above using a plurality of trainingdata sets. As a result, the neural network is learned and a learnedneural network model is generated. The learning of the neural networkmodel is performed using, for example, a computer (for example, acomputer mounted with a graphics processing unit (GPU)) installed in aproduction factory or the like. The generated learned neural networkmodel is mounted on the ECU 61 provided in the vehicle before thevehicle is shipped. That is, information (model structure, weight w,bias b, and the like) on the learned neural network model is stored inthe memory 63 of the ECU 61 or another storage device provided in thevehicle.

FIG. 6 is a graph showing a relationship between a degree of freedom ofthe neural network model and a determination coefficient of the outputparameter. The degree of freedom of the neural network model indicatesthe total number of weights and biases in the neural network model. Forthis reason, the degree of freedom of the neural network model is largeras the number of input layers, the number of nodes of the input layer,the number of hidden layers, and the number of nodes of the hiddenlayers are larger.

A determination coefficient R² of the output parameter is calculated bythe following equation and takes a value of zero to one. The calculationaccuracy of the output parameter is higher as the determinationcoefficient R² of the output parameter is closer to one. R²=(sum ofdeviation squares of calculated values of output parameters)/(sum ofdeviation squares of measured values of output parameters), where thecalculated values of output parameters are values output by the learnedneural network model and the measured values of output parameters arevalues actually measured using a sensor or the like.

In FIG. 6, results using a learned first neural network model accordingto the embodiment are plotted with diamonds, and results using thelearned neural network model in a comparative example are plotted withsquares. The number above each data point indicates the number ofintermediate layers. FIG. 6 shows the results when the number ofintermediate layers is changed from one to five in each neural networkmodel.

FIG. 7 is a diagram schematically showing a configuration of the firstneural network model according to the embodiment. FIG. 7 shows theconfiguration of the first neural network model when the number ofintermediate layers is two. The target of the first neural network modelis the internal combustion engine 1.

In the first neural network model, the output layer has seven nodes andoutputs seven types of output parameters y1 to y7 relating to anoperation state of the internal combustion engine 1. The y1 is outputtorque of the internal combustion engine 1. The y2 is a sound pressureof a combustion sound. The y3 is a crank angle (CA50) at which acombustion ratio becomes 50%. The y4 is a nitrogen oxide (NOx)concentration in the exhaust gas. The y5 is a carbon monoxide (CO)concentration in the exhaust gas. The y6 is a hydrocarbon (HC)concentration in the exhaust gas. The y7 is a smoke concentration in theexhaust gas.

In the first neural network model, 12 types of parameters (x1 to x12)relating to the operation state of the internal combustion engine 1 andcorrelated with the output parameters are used as input parameters. Thex1 is a fuel injection amount in a main injection. The x2 is a fuelinjection timing in the main injection. The x3 is a fuel injectionamount in a first pilot injection. The x4 is a fuel injection timing inthe first pilot injection. The x5 is a fuel injection amount in a secondpilot injection. The x6 is a fuel injection timing in the second pilotinjection. The x7 is a fuel injection pressure. The x8 is an intake airtemperature. The x9 is an intake air pressure. The x10 is the EGR rate.The x11 is the fresh air amount. The x12 is an amount of gas flowinginto the cylinder 11.

The values of the input parameters are, for example, measured by asensor or the like as described below or calculated by the ECU 61. Thex1 to x6 are calculated based on a command value to be output from theECU 61 to the fuel injection valve 21. The x7 is calculated based on anoutput of the fuel pressure sensor 74. The x8 is measured by the intakeair temperature sensor 72. The x9 is measured by the intake air pressuresensor 73. The x10 is calculated based on a command value to be outputfrom the ECU 61 to the EGR control valve 52. The x11 is measured by theair flow meter 71. The x12 is calculated based on an output of the airflow meter 71 and the command value to be output from the ECU 61 to theEGR control valve 52.

As shown in FIG. 7, the first neural network model has ₁₂C₁₁ (=12)neural network units (a first neural network unit (referred to as a“first NN unit” in the specification) to 12th neural network unit(referred to as a “12th NN unit” in the specification)). The ₁₂C₁₁ (=12)combinations of input parameters selected from the 12 types ofparameters (x1 to x12) are input to the 12 neural network units. Forexample, eleven input parameters x1 to x11 are input to the first inputlayer of the first NN unit, and eleven input parameters x2 to x12 areinput to the 12th input layer of the 12th NN unit.

On the other hand, the neural network model in the comparative examplehas a simple configuration as shown in FIG. 3, and outputs seven typesof output parameters from the above 12 types of input parameters.Therefore, the neural network model in the comparative example includesan input layer having 12 nodes and an output layer having seven nodes.In the first neural network model and the neural network model in thecomparative example, the number of nodes of the intermediate layer isset such that the degrees of freedom of the neural network models areequal when the number of intermediate layers is the same. Thedetermination coefficient of the output parameter is calculated as anaverage value of the determination coefficients of the seven types ofoutput parameters (y1 to y7).

As can be seen from FIG. 6, the first neural network model has a largerdetermination coefficient of the output parameter with respect to thedegree of freedom of the neural network model than that in thecomparative example. Therefore, the first neural network model hashigher calculation accuracy of the output parameter than the neuralnetwork model in the comparative example.

In FIG. 6, the results using a learned second neural network modelaccording to the embodiment are plotted with circles, and the resultsusing a learned third neural network model in the embodiment are plottedwith triangles. The second neural network model includes ₁₂C₇ (=792)neural network units, and ₁₂C₇ (=792) combinations of input parametersare input to 792 neural network units. The third neural network modelincludes ₁₂C₉ (=220) neural network units, and ₁₂C₉ (=220) combinationsof input parameters are input to 220 neural network units. In the secondneural network model and the third neural network model, solely theresults when the number of intermediate layers is two are shown.

As can be seen from FIG. 6, it is possible to improve the calculationaccuracy of the output parameter also in the second neural network modeland the third neural network model as compared with the neural networkmodel in the comparative example. Therefore, in the embodiment, when theneural network model includes _(n)C_(k) neural network units to which_(n)C_(k) combinations of input parameters are input, k can be set toany number from 2 to n−1.

FIG. 8 is a graph showing a relationship between the number of trainingdata sets used for learning the neural network model and thedetermination coefficient of the output parameter. In FIG. 8, resultsusing the learned first neural network model according to the embodimentare plotted with diamonds, and results using the learned neural networkmodel in the comparative example are plotted with squares. Each of thefirst neural network model and the neural network model in thecomparative example has three intermediate layers.

As can be seen from FIG. 8, the number of training data sets needed toobtain the same determination coefficient in the first neural networkmodel is smaller than that in the neural network model in thecomparative example. Therefore, in the neural network model in theembodiment, it is possible to reduce the number of training data setsneeded to obtain predetermined calculation accuracy of the outputparameter and thus to reduce a learning time of the neural networkmodel.

Flowchart

FIG. 9 is a flowchart showing a control routine for controlling theinternal combustion engine according to the first embodiment. Thecontrol routine of FIG. 9 is repeatedly executed by the ECU 61 at apredetermined execution interval. The predetermined execution intervalis, for example, a time of one cycle of the internal combustion engine1.

First, in step S101, the parameter acquisition unit 81 acquires theinput parameters to be input to the neural network model. The inputparameters are mutually different types of parameters, for example,parameters relating to the operation state of the internal combustionengine 1. The input parameters are measured by the sensor or the like orcalculated by the ECU 61 according to the types of the input parameters.

Next, in step S102, the calculation unit 82 calculates at least oneoutput parameter based on the input parameters acquired by the parameteracquisition unit 81 using the neural network model. The at least oneoutput parameter is, for example, a parameter relating to the operationstate of the internal combustion engine 1. The neural network modelincludes the neural network units and the output layer that outputs theat least one output parameter based on the outputs of the neural networkunits. The calculation unit 82 inputs the different combinations ofinput parameters selected from the input parameters acquired by theparameter acquisition unit 81 to the neural network units to cause theneural network model to output the output parameter.

Next, in step S103, the controller 83 controls the internal combustionengine 1 based on the at least one output parameter calculated by thecalculation unit 82. Specifically, the controller 83 controls theinternal combustion engine 1 such that the output parameter is includedin a predetermined target range. For example, when the at least oneoutput parameter includes the NOx concentration in the exhaust gas, thecontroller 83 causes the opening degree of the EGR control valve 52 toincrease such that the NOx concentration decreases when a predictedvalue of the NOx concentration calculated by the calculation unit 82 ishigher than the target range. After step S103, the control routine ends.

Second Embodiment

A configuration and control of the electronic control unit used in amachine learning system according to a second embodiment are basicallythe same as those of the electronic control unit in the firstembodiment.

For this reason, hereinafter, the second embodiment of the disclosurewill be described with a focus on differences from the first embodiment.

In the second embodiment, the neural network model is learned in aserver outside the vehicle, and the learned neural network model istransmitted from the server to the vehicle. As a result, it is possibleto replace or add the neural network model as needed and to mount theneural network model for calculating a desired output parameter on thevehicle after the vehicle is shipped. Further, it is possible to improveprediction accuracy of the output parameter by updating the weight orthe like of the neural network model by communicating with the server.

FIG. 10 is a diagram schematically showing the machine learning systemaccording to the second embodiment. A machine learning system 300includes the electronic control unit (ECU) 61 and a communication device91 which are provided in a vehicle 100 and a server 200 outside thevehicle 100. Similar to the first embodiment, as shown in FIG. 2, theECU 61 includes the parameter acquisition unit 81, the calculation unit82, and the controller 83.

The ECU 61 and the communication device 91 are communicably connected toeach other through an in-vehicle network compliant with a standard suchas a controller area network (CAN). The communication device 91 iscommunicable with the server 200 through a communication network and is,for example, a data communication module (DCM). The communicationbetween the communication device 91 and the server 200 is performed bywireless communication compliant with various communication standards.

The server 200 includes a communication interface 210, a storage device230, and a processor 220. The communication interface 210 and thestorage device 230 are connected to the processor 220 through signallines. The server 200 may further include an input device such as akeyboard and a mouse, an output device such as a display, and the like.

The communication interface 210 has an interface circuit for connectingthe server 200 to the communication device 91 of the vehicle 100 throughthe communication network. The storage device 230 is configured of, forexample, a hard disk drive (HDD), a solid state drive (SDD), an opticalrecording medium, a semiconductor memory such as a random access memory(RAM), and the like.

The storage device 230 stores various pieces of data. Specifically, thestorage device 230 stores a training data set used for learning theneural network model and a computer program for performing the learningof the neural network model. The training data set includes acombination of measured values of a plurality of input parameters andmeasured values of at least one output parameter corresponding to themeasured values. The measured values of the input parameters and theoutput parameter are acquired in advance using, for example, the enginebench, and the training data set is created in advance by combining thecorresponding measured values. The measured values of the inputparameters and the output parameter may be acquired by another vehicledifferent from the vehicle 100 and transmitted to the server 200 from acommunication device provided in another vehicle.

The server 200 learns the neural network using the training data set andgenerates a learned neural network model. Specifically, the server 200repeatedly updates weight w and bias b of the neural network by usingthe error back-propagation method described above using a plurality oftraining data sets. As a result, the weight w and the bias b of theneural network converge to appropriate values, and the learned neuralnetwork model is generated. The neural network model in the secondembodiment has a configuration similar to that in the first embodiment(for example, refer to FIGS. 4, 5, and 7).

The learned neural network model is transmitted from the server 200 tothe ECU 61 of the vehicle 100 through the communication interface 210 ofthe server 200 and the communication device 91 of the vehicle 100. As aresult, information (model structure, weight w, bias b, and the like) onthe learned neural network model is stored in the memory 63 of the ECU61 or another storage device provided in the vehicle 100.

The calculation unit 82 of the ECU 61 calculate the at least one outputparameter based on the input parameters using the learned neural networkmodel transmitted from the server 200 to the vehicle 100. The controlroutine of FIG. 9 is executed similar to the first embodiment, and thecontroller 83 controls the internal combustion engine 1 based on the atleast one output parameter calculated by the calculation unit 82.

Third Embodiment

A configuration and control of a machine learning system according to athird embodiment are basically the same as the machine learning systemaccording to the second embodiment. For this reason, hereinafter, thethird embodiment of the disclosure will be described with a focus ondifferences from the second embodiment.

In the third embodiment, similar to the second embodiment, the neuralnetwork model is learned in a server outside a vehicle, and the learnedneural network model is transmitted from the server to the vehicle. Onthe other hand, in the third embodiment, measured values of inputparameter and output parameter are acquired in the vehicle in order tocreate a training data set. As a result, it is possible to easilyprepare a plurality of training data sets using the vehicle.

Similar to the second embodiment, as shown in FIG. 10, the machinelearning system 300 includes the electronic control unit (ECU) 61 andthe communication device 91 which are provided in the vehicle 100 andthe server 200 outside the vehicle 100. Similar to the first embodiment,as shown in FIG. 2, the ECU 61 includes the parameter acquisition unit81, the calculation unit 82, and the controller 83.

The parameter acquisition unit 81 acquires a plurality of inputparameters and at least one output parameter used in the neural networkmodel. The input parameters and the at least one output parameter aremeasured by a sensor or the like or calculated by the ECU 61 accordingto the types of parameters. For example, when the at least one outputparameter includes output torque of the internal combustion engine 1, atorque sensor is disposed on an output shaft (crankshaft) of theinternal combustion engine 1 and the output torque of the internalcombustion engine 1 is measured by the torque sensor.

The parameter acquisition unit 81 transmits the input parameters and theat least one output parameter to the server 200 through thecommunication device 91. A combination of the input parameters and theat least one output parameter transmitted to the server 200 is stored inthe storage device 230 of the server 200 as the training data set.

The server 200 learns a neural network using the training data setincluding the combination of the input parameters and the at least oneoutput parameter acquired by the parameter acquisition unit 81 andgenerates the learned neural network model. Specifically, the server 200repeatedly updates weight w and bias b of the neural network by usingthe error back-propagation method described above using the trainingdata sets. As a result, the weight w and the bias b of the neuralnetwork converge to appropriate values, and the learned neural networkmodel is generated.

Similarly to the second embodiment, the server 200 transmits the learnedneural network model to the ECU 61 of the vehicle 100. The calculationunit 82 of the ECU 61 calculate the at least one output parameter basedon the input parameters using the learned neural network modeltransmitted from the server 200 to the vehicle 100. As a result, it ispossible to obtain a predicted value of an output parametercorresponding to the input parameter having a predetermined value beforethe output parameter is measured by a sensor or the like. The controlroutine of FIG. 9 is executed similar to the first embodiment, and thecontroller 83 controls the internal combustion engine 1 based on the atleast one output parameter calculated by the calculation unit 82.

Fourth Embodiment

A configuration and control of a control device of an internalcombustion engine according to a fourth embodiment are basically thesame as those of the control device of the internal combustion engine inthe first embodiment. For this reason, hereinafter, the fourthembodiment of the disclosure will be described with a focus ondifferences from the first embodiment.

In the fourth embodiment, similar to the third embodiment, measuredvalues of input parameters and output parameters are acquired in avehicle in order to create a training data set. On the other hand, inthe fourth embodiment, learning of the neural network model is performedin the vehicle. As a result, it is possible to efficiently perform thelearning of the neural network model in the vehicle without using aserver or the like.

FIG. 11 is a functional block diagram of the ECU 61 in the fourthembodiment. In the fourth embodiment, the ECU 61 includes a learningunit 84 in addition to the parameter acquisition unit 81, thecalculation unit 82, and the controller 83. Similar to the thirdembodiment, the parameter acquisition unit 81 acquires a plurality ofinput parameters and at least one output parameter used in the neuralnetwork model. A combination of the input parameters and the at leastone output parameter acquired by the parameter acquisition unit 81 isstored as the training data set in the memory 63 of the ECU 61 oranother storage device provided in the vehicle.

The learning unit 84 learns a neural network using the training data setincluding the combination of the input parameters and the at least oneoutput parameter acquired by the parameter acquisition unit 81 andgenerates a learned neural network model. Specifically, the learningunit 84 repeatedly updates weight w and bias b of the neural network byusing the error back-propagation method described above using aplurality of training data sets. As a result, the weight w and the biasb of the neural network converge to appropriate values, and the learnedneural network model is generated.

The calculation unit 82 calculates the at least one output parameterbased on the input parameters using the learned neural network model. Asa result, it is possible to obtain a predicted value of the outputparameter corresponding to the input parameter having a predeterminedvalue before the output parameter is measured by a sensor or the like.The control routine of FIG. 9 is executed similar to the firstembodiment, and the controller 83 controls the internal combustionengine 1 based on the at least one output parameter calculated by thecalculation unit 82.

Other Embodiments

The preferred embodiments according to the disclosure are describedabove. However, the disclosure is not limited to these embodiments, andvarious modifications and changes can be made within the scope of theclaims. For example, the target of the neural network model used in anin-vehicle electronic control unit (ECU 61) may be anything relating tothe vehicle other than the internal combustion engine 1 described above.

For example, the target of the neural network model used in thein-vehicle electronic control unit may be a spark ignition internalcombustion engine (for example, a gasoline engine). When the sparkignition internal combustion engine includes the port fuel injectionvalve that injects the fuel into the intake port and the in-cylinderfuel injection valve that directly injects the fuel into the cylinder,for example, the following types of parameters are selected as the inputparameter to be input to the neural network model and the outputparameter to be output from the neural network model. As the inputparameter, for example, the engine speed, the fuel injection amount ofthe port fuel injection valve, the fuel injection timing of the portfuel injection valve, the intake air temperature, the intake airpressure, the opening degree of the EGR control valve, the intake airamount, the fuel injection amount of the in-cylinder fuel injectionvalve, the fuel injection timing of the in-cylinder fuel injectionvalve, and the injection pressure of the in-cylinder fuel injectionvalve are used. As the output parameter, for example, an ignition timingof the air-fuel mixture, a combustion period of the air-fuel mixture,the concentration of harmful substances (NOx, HC, CO, smoke, and thelike) in the exhaust gas, and a maximum calorific value due to thecombustion of the air-fuel mixture are used.

The target of the neural network model used in the in-vehicle electroniccontrol unit may be a battery or a motor provided in a hybrid vehicle(HV), a plug-in hybrid vehicle (PHV), or an electric vehicle (EV). Whenthe target of the neural network model is the battery, for example, thefollowing types of parameters are selected as the input parameter to beinput to the neural network model and the output parameter to be outputfrom the neural network model. As the input parameter, for example, abattery voltage, a battery current, a vehicle continuous operation time,and a vehicle speed are used. As the output parameter, for example, astate of charge (SOC) of the battery, a degree of deterioration of thebattery, and a temperature of the battery are used.

When the target of the neural network model is the motor, for example,the following types of parameters are selected as the input parameter tobe input to the neural network model and the output parameter to beoutput from the neural network model. As the input parameter, forexample, a motor voltage, a motor current, and a motor speed are used.As the output parameter, for example, shaft torque of the motor and amotor temperature are used.

The neural network model as described above may be used in an outputparameter calculation device. The output parameter calculation deviceincludes a parameter acquisition unit that acquires a plurality of inputparameters and a calculation unit that calculates at least one outputparameter based on the input parameters acquired by the parameteracquisition unit using the neural network model. The output parametercalculation device has, for example, a central processing unit (CPU), aGPU, a field programmable gate array (FPGA), or an application specificintegrated circuit (ASIC) as a hardware configuration. The target of theneural network model used in the output parameter calculation device isnot limited to a target relating to the vehicle. For example, the targetof the neural network model may be a machine tool or the like.

What is claimed is:
 1. A control device of an internal combustionengine, the control device comprising: a parameter acquisition unitconfigured to acquire a plurality of input parameters; a calculationunit configured to calculate at least one output parameter based on theinput parameters acquired by the parameter acquisition unit using aneural network model; and a controller configured to control theinternal combustion engine based on the at least one output parametercalculated by the calculation unit, wherein: the neural network modelincludes a plurality of neural network units and an output layer thatoutputs the at least one output parameter based on outputs of the neuralnetwork units; each of the neural network units includes one input layerand at least one intermediate layer; and the neural network model isconfigured to input different combinations of input parameters selectedfrom the input parameters to each of the input layers of the neuralnetwork units such that a total number of combinations of inputparameters to be input to the neural network units is larger than thenumber of the input parameters, wherein: the number of the inputparameters is n; and the neural network model includes _(n)C_(k) neuralnetwork units to which _(n)C_(k) combinations of input parametersselected from the input parameters are input, where n is three or moreand k is two to n−1.
 2. The control device according to claim 1, furthercomprising: a learning unit configured to perform learning of the neuralnetwork model in a vehicle mounted with the internal combustion engine,wherein: the parameter acquisition unit is configured to acquire theinput parameters and the at least one output parameter; and the learningunit is configured to perform the learning of the neural network modelusing a training data set including a combination of the inputparameters and the at least one output parameter acquired by theparameter acquisition unit.
 3. A control method of an internalcombustion engine, the control method comprising: acquiring a pluralityof input parameters; calculating at least one output parameter based onthe input parameters using a neural network model; and controlling theinternal combustion engine based on the at least one output parameter,wherein: the neural network model includes a plurality of neural networkunits and an output layer that outputs the at least one output parameterbased on outputs of the neural network units; each of the neural networkunits includes one input layer and at least one intermediate layer; andthe neural network model is configured to input different combinationsof input parameters selected from the input parameters to each of theinput layers of the neural network units such that a total number ofinput parameters to be input to the neural network units is larger thanthe number of the input parameters, wherein: the number of the inputparameters is n; and the neural network model includes _(n)C_(k) neuralnetwork units to which _(n)C_(k) combinations of input parametersselected from the input parameters are input, where n is three or moreand k is two to n−1.
 4. An output parameter calculation devicecomprising: a parameter acquisition unit configured to acquire aplurality of input parameters; and a calculation unit configured tocalculate at least one output parameter based on the input parametersacquired by the parameter acquisition unit using a neural network model,wherein: the neural network model includes a plurality of neural networkunits and an output layer that outputs the at least one output parameterbased on outputs of the neural network units; each of the neural networkunits includes one input layer and at least one intermediate layer; andthe neural network model is configured to input different combinationsof input parameters selected from the input parameters to each of theinput layers of the neural network units such that a total number ofinput parameters to be input to the neural network units is larger thanthe number of the input parameters, wherein: the number of the inputparameters is n; and the neural network model includes _(n)C_(k) neuralnetwork units to which _(n)C_(k) combinations of input parametersselected from the input parameters are input, where n is three or moreand k is two to n−1.
 5. The control device according to claim 1, whereinthe neural network is received from a server outside a vehicle by thevehicle.
 6. The control method according to claim 3, further comprisingreceiving the neural network from a server outside of a vehicleincluding the internal combustion engine.
 7. The control methodaccording to claim 3, further comprising: learning by the neural networkmodel in a vehicle mounted with the internal combustion engine, wherein:acquiring the plurality of input parameters further comprises acquiringthe at least one output parameter; and the learning of the neuralnetwork model comprises using a training data set including acombination of the input parameters and the at least one outputparameter.
 8. The output parameter calculation device according to claim4, wherein the neural network is received from a server outside avehicle by the vehicle.
 9. The output parameter calculation deviceaccording to claim 4, further comprising: a learning unit configured toperform learning of the neural network model in a vehicle mounted withthe internal combustion engine, wherein: the parameter acquisition unitis configured to acquire the input parameters and the at least oneoutput parameter; and the learning unit is configured to perform thelearning of the neural network model using a training data set includinga combination of the input parameters and the at least one outputparameter acquired by the parameter acquisition unit.